#ifndef WORKITEM_HPP
#define WORKITEM_HPP

#include <sys/types.h>
#include <coreexeption.hpp>

namespace kport
{

struct WorkItemStat
{
    unsigned int secLatency;
    unsigned int usecLatency;
    unsigned int secTime;
    unsigned int usecTime;
	uint bytes;
	uint items;
};

class WorkItem
{
public:
    enum TYPE {IN,OUT};
	virtual bool ready() throw(pland::Exeption) = 0;
	virtual struct WorkItemStat work() throw(pland::Exeption) = 0;
    virtual WorkItem::TYPE type() = 0;
};

}

#endif // WORKITEM_HPP
